package com.zxjbyte.yiyi.module.upms.domain.entity;

import com.baomidou.mybatisplus.annotation.*;
import com.zxjbyte.yiyi.framework.tenant.db.TenantBasePO;
import lombok.Data;
import lombok.experimental.Accessors;

import java.util.Date;

/**
 * @Author zhangxingjia
 * @Date 2024/12/27 16:59
 * @Version: 1.0
 */
@Data
@Accessors(chain = false)
@TableName("sys_user")
public class UserPO extends TenantBasePO {

    private static final long serialVersionUID = 7836835081281764880L;

    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    // 账号
    @TableField("account")
    private String account;

    // 密码
    @TableField("password")
    private String password;

    // 盐值
    @TableField("salt")
    private String salt;

    // 昵称
    @TableField("nick_name")
    private String nickName;

    // 真实姓名
    @TableField("real_name")
    private String realName;

    // 性别：0-未知，1-男，2-女
    @TableField("gender")
    private Integer gender;

    // 出生日期
    @TableField(value = "birthday", updateStrategy = FieldStrategy.ALWAYS)
    private Date birthday;

    // 头像
    @TableField("avatar")
    private String avatar;

    // 邮箱
    @TableField("email")
    private String email;

    // 电话
    @TableField("phone")
    private String phone;

    // 证件类型
    @TableField(value = "id_type", updateStrategy = FieldStrategy.ALWAYS)
    private Integer idType;

    // 证件号码
    @TableField("id_no")
    private String idNo;

    // 状态：0-启用，1-禁用
    @TableField("status")
    private Integer status;

    // 备注
    @TableField("remark")
    private String remark;

    // 最后登录IP
    @TableField("last_login_ip")
    private String lastLoginIp;

    // 最后登录时间
    @TableField("last_login_time")
    private Date lastLoginTime;
}
